Cloud computing is the delivery of computing resources, both hardware and software resources, as a service over a network (e.g., the Internet). There are different types of cloud computing such as: Platform-as-a-Service (PaaS), Infrastructure-as-a-Service (IaaS), Software-as-a-Service (SaaS), and so on. The PaaS enables users to deploy, configure, and use business applications in a cloud environment. Further, the users are provided with the possibility to create software solutions using tools and libraries from the cloud provider. The cloud provider provides the required tools, infrastructure, and services to get user's on-demand applications up and running. Developers can use the platform to build lightweight and network-oriented applications to extend already existing solutions.
By applying the Software-as-a-Service (SaaS) model and offering business applications hosted online, the maintenance costs decrease and time is saved for the customer. Through delivering SaaS solutions, a cloud service provider may provide software applications and various hardware and software resources on-demand when requested by an end user (e.g., customer). A customer of on-demand applications or application services is free from the procurement and maintenance of the hardware and software for executing the applications or application services. The customer of on-demand applications may consume data from provided services and utilize it to extend customer's software applications running in the cloud environment.